﻿using Dexter.Dependency;
using Dexter.Dependency.Installation;
using Dexter.Search.Lucene.Storage;

namespace Dexter.Search.Lucene.Configuration.OnPremise.Installer {
	public class LayerInstaller : ILayerInstaller{
		/// <summary>
		/// 	Installs all the component needed by the assembly.
		/// </summary>
		/// <param name = "container">The container.</param>
		public void ServiceRegistration ( IDexterContainerRegister container ) {
			container.Register<ILuceneConfiguration, LuceneConfiguration> ( "LuceneConfiguration", LifeCycle.Singleton );
			container.Register<ILuceneStorageService, LuceneStorageService> ( "LuceneStorageService", LifeCycle.Singleton );
		}

		/// <summary>
		/// 	Setups the service.
		/// </summary>
		/// <param name = "container">The container.</param>
		public void ServiceRegistrationComplete ( IDexterContainerResolver container ) {

		}

		/// <summary>
		/// 	Setups the service.
		/// </summary>
		/// <param name = "container">The container.</param>
		public void ApplicationStarted ( IDexterContainerResolver container ) {

		}
	}
}
